package com.biggabrotha {

  public class GoogleImageRequest {
    /**
     * This argument supplies the query, or search expression, that is passed into the searcher.
     */
    public var q:String

    /**
     * This argument supplies protocol version number.
     * The only valid value at this point in time is 1.0.
     */
    public const v:String = "1.0"

    /**
     * This optional argument supplies the number of results that the application would like to recieve.
     * A value of <code>small</code> indicates a small result set size or <strong>4</strong> results.
     * A value of <code>large</code> indicates a large result set or <strong>8</strong> results.
     * If this argument is not supplied, a value of <code>small</Scode> is assumed.
     */
    public var rsz:String;

    /**
     * This optional argument supplies the host language of the application making the request.
     * If this argument is not present then the system will choose a value based on the value of the <code>Accept-Language</code> http header.
     * If this header is not present, a value of <code>en</code> is assumed.
     * @default <code>en</code>
     */
    public var hl:String = "en";

    /**
     * forget it (1000 max/d)
     */
    public var key:String;

    /**
     * This optional argument supplies the search safety level which may be one of:
     * <ul>
     * <li><code>safe=active</code> - enables the highest level of safe search filtering</li>
     * <li><code>safe=moderate</code> - enables moderate safe search filtering (default)</li>
     * <li><code>safe=off</code> - disables safe search filtering</li>
     * </ul>
     * @default <code>safe=moderate</code>
     */
    public var safe:String;

    /**
     * This optional argument tells the image search system to restrict the search to images of the specified size, where size can be one of:
     * <ul>
     * <li><code>imgsz=icon</code> - restrict to small images</li>
     * <li><code>imgsz=small|medium|large|xlarge</code> - restrict to medium images</li>
     * <li><code>imgsz=xxlarge</code> - restrict to large images</li>
     * <li><code>imgsz=huge</code> - restrict to extra large images</li>
     * </ul>
     */
    public var imgsz:String;

    /**
     * This optional argument tells the image search system to restrict the search to
     * images of the specified colorization, where colorization can be one of:
     * <ul>
     *   <li><code>imgc=gray</code> - restrict to grayscale images</li>
     *   <li><code>imgc=color</code> - restrict to color images</li>
     * </ul>
     */
    public var imgc:String;

    /**
     *
     * This optional argument tells the image search system to filter the search to
     * images of the specified color:
     * <ul>
     *   <li><code>imgcolor=black</code></li>
     *   <li><code>imgcolor=blue</code></li>
     *   <li><code>imgcolor=brown</code></li>
     *   <li><code>imgcolor=gray</code></li>
     *   <li><code>imgcolor=green</code></li>
     *   <li><code>imgcolor=orange</code></li>
     *   <li><code>imgcolor=pink</code></li>
     *   <li><code>imgcolor=purple</code></li>
     *   <li><code>imgcolor=red</code></li>
     *   <li><code>imgcolor=teal</code></li>
     *   <li><code>imgcolor=white</code></li>
     *   <li><code>imgcolor=yellow</code></li>
     * </ul>
     */
    public var imgcolor:String;

    /**
     * This optional argument tells the image search system to restrict the search to
     * images of the specified type:
     * <ul>
     *   <li><code>imgtype=face</code> - restrict to images of faces</li>
     *   <li><code>imgtype=photo</code> - restrict to photos </li>
     *   <li><code>imgtype=clipart</code> - restrict to clipart images </li>
     *   <li><code>imgtype=lineart</code> - restrict to images of line drawings </li>
     * </ul>
     */
    public var imgtype:String;

    /**
     * This optional argument tells the image search system to restrict the search to
     * images of the specified filetype, where filetype can be one of:
     * <ul>
     *   <li><code>as_filetype=jpg</code> - restrict to jpg images</li>
     *   <li><code>as_filetype=png</code> - restrict to png images</li>
     *   <li><code>as_filetype=gif</code> - restrict to gif images</li>
     * * <li><code>as_filetype=bmp</code> - restrict to bmp images</li>
     * </ul>
     */
    public var as_filetype:String;

    /**
     * This optional argument tells the image search system to restrict the search to
     * images within the specified domain, e.g., <code>as_sitesearch=photobucket.com</code>.
     * Note:  This restriction may restrict results to images found on pages at the given URL and/or
     * images with the given URL.
     */
    public var as_sitesearch:String;

    /**
     * can be <code>life</code>
     */
    public var source:String;

    public function GoogleImageRequest() {

    }
  }
}